package com.kelaite.procurement.service;

import java.util.List;

import com.kelaite.procurement.dto.PurchaseOrderDTO;
import com.kelaite.procurement.dto.PurchaseOrderPaymentDTO;
import com.kelaite.procurement.entity.TPurchaseOrderPayment;

public interface PurchaseOrderPaymentService {

	public PurchaseOrderPaymentDTO save(PurchaseOrderPaymentDTO orderPaymentDTO);

	public void deleteByPrimaryKey(Long id);

	public void deleteByObject(TPurchaseOrderPayment persistence);

	public TPurchaseOrderPayment getObject(Long id);

	public List<TPurchaseOrderPayment> getAll();

	public List<TPurchaseOrderPayment> getByProperty(String property,
			Object value);

	public List<PurchaseOrderPaymentDTO> getByPurchaseOrder(
			PurchaseOrderDTO purchaseOrderDTO);

	public PurchaseOrderPaymentDTO update(
			PurchaseOrderPaymentDTO orderPaymentDTO);

	public int countByPurchaseOrderId(Long purchaseOrderId);

	public int countByPurchaseOrderIdAndDisplayOrderNo(Long puchaseOrderId,
			String displayOrderNo);

	public void updatePurchaseInvoiceStatus(Boolean isStatus1,Long purchasePaymentId,int invoceStatus);
	
	public void updatePurchaseReportStatus(Boolean isStatus1,long purchasePaymentId,int reportStatus);
}
